gestureclick: Only emit release for the same sequence
authorAlexander Mikhaylenko <alexm@gnome.org>
Thu, 12 Nov 2020 10:26:36 +0000 (15:26 +0500)
committerAlexander Mikhaylenko <alexm@gnome.org>
Thu, 12 Nov 2020 10:26:36 +0000 (15:26 +0500)
Avoid spurious releases when touching the same widget with another finger.

gtk/gtkgestureclick.c

index 98e8b7dd08faf260850ea8130c151a7a8e81801c..1af276bd1592654327c764eb175cf0e5333d0bd4 100644 (file)
@@ -272,7 +272,7 @@ gtk_gesture_click_end (GtkGesture       *gesture,
   interpreted = gtk_gesture_get_point (gesture, current, &x, &y);
   state = gtk_gesture_get_sequence_state (gesture, current);
 
-  if (state != GTK_EVENT_SEQUENCE_DENIED && interpreted)
+  if (current == sequence && state != GTK_EVENT_SEQUENCE_DENIED && interpreted)
     g_signal_emit (gesture, signals[RELEASED], 0, priv->n_release, x, y);
 
   priv->n_release = 0;